package com.gitee.zycra.future.job.common.model;

import com.gitee.zycra.jdbc.annotation.Column;
import com.gitee.zycra.jdbc.annotation.ID;
import com.gitee.zycra.jdbc.annotation.Table;
import lombok.Getter;
import lombok.Setter;
import lombok.ToString;
import lombok.experimental.Accessors;

import java.time.LocalDateTime;

/**
 * @author zycra
 */
@Getter
@Setter
@ToString
@Accessors(chain = true)
@Table("job_node")
public class JobNode {

    /**
     * 主键
     */
    @ID
    @Column("id")
    private Long id;

    /**
     * 应用名称
     */
    @Column("application_name")
    private String applicationName;

    /**
     * 节点IP地址
     */
    @Column("node_ip")
    private String nodeIp;

    /**
     * CPU使用率
     */
    @Column("cpu_used_ratio")
    private Integer cpuUsedRatio;

    /**
     * 内存使用率
     */
    @Column("memory_used_ratio")
    private Integer memoryUsedRatio;

    /**
     * 正在执行的任务数量
     */
    @Column("running_count")
    private Integer runningCount;

    /**
     * 是否存活(0:否,1:是)
     */
    @Column("alive")
    private Boolean alive;

    /**
     * 上次心跳时间
     */
    @Column("last_heart_beats_time")
    private LocalDateTime lastHeartBeatsTime;

    /**
     * 创建时间
     */
    @Column("create_time")
    private LocalDateTime createTime;

    /**
     * 更新时间
     */
    @Column("update_time")
    private LocalDateTime updateTime;
}
